home *** CD-ROM | disk | FTP | other *** search
/ United Public Domain Gold 2 / United Public Domain Gold 2.iso / utilities / pu093.dms / pu093.adf / BootX3.30.doc / BootX3.30.doc
Text File  |  1994-10-31  |  13KB  |  320 lines

  1.                          BootX v3.30 User Manual
  2.  
  3.                             February 7, 1990
  4.  
  5.                         Requires the arp.library
  6.  
  7. The BootX package consists of:
  8.  
  9.         BootX3.30               The program file
  10.         BootX.BBLib             The BootX bootblock library
  11.         BootX3.30.doc           This file
  12.  
  13. Note that the BootX.BBLib file is not required to run the program.  See
  14. further.
  15.  
  16. This documentation will always be updated at the top.  Users of previous
  17. versions of BootX need only to read the paragraph reflecting the changes
  18. since their last version.
  19.  
  20. Changes from BootX v3.30 (The big one)
  21. --------------------------------------
  22.  
  23. - Fixed a bug in the font name. BootX should now always use the Topaz 80
  24.   font (Hopefully).
  25. - Fixed a bug in the startup code.
  26. - Optimized the code completely
  27. - BootX now checks for viruses on startup
  28. - Completely rewrote the MemoryCheck routine
  29. - All information is now printed using a console (Now I can use formated
  30.   output for several functions. For the Amiga programmers: I understand
  31.   the RawDoFmt() function now (at last)).
  32. - Completely rewrote the link virus check routine. It can be stopped by
  33.   pressing the left mousebutton.
  34. - BootX tries to reconise a bootblock that is loaded.
  35. - Added checks for PVL Virus Protector 6.5 and Anti-Virus 2.0 and added
  36.   both to the built-in bootblocks.
  37. - Removed some of the spelling errors from this doc file
  38.  
  39. Changes from BootX v3.2
  40. -----------------------
  41.  
  42. - Fixed a bug in the new recognition routine.
  43.  
  44. Changes from BootX v3.1
  45. -----------------------
  46.  
  47. - Some internal code optimizations.
  48. - Added Anti-Virus 1.0 from Peter Stuer.
  49. - Finally removed the NorthStar 2 bootblock from the installable bootblocks.
  50.  
  51. Changes from BootX v3.0
  52. -----------------------
  53.  
  54. - Reformated this doc file so it can be read from the CLI using type.
  55. - The detection on/off switch now flashes when it is selected.
  56. - Added a new bootblock to the recog list.
  57. - Added my own viruschecker to the installable bootblocks:
  58.  
  59.         Thor Anti-Virus v1.0
  60.  
  61. When you boot a disk with this bootblock, it first checks the ExecBase
  62. vectors that are most likely to change when a virus installs itself.
  63. For the programmers among you:  ColdCapture, CoolCapture (WarmCapture
  64. isn't supported in KickStart1.2 and 1.3), KickMemPtr, KickTagPtr and
  65. KickCheckSum.  OldOpenLibrary (IRQ Virus) and PutMsg or DoIO are not
  66. checked because these vectors are reset upon booting.  When nothing
  67. suspicious is found, a title picture is shown signaling everything is
  68. OK.  You can either wait or click the left mousebutton to continue.
  69. When Thor Anti-Virus v1.0 finds something in the above mentioned vectors
  70. the screen flashes red for a short period.  It is up to you to react
  71. within this period and click the right mousebutton.  When you NOTHING is
  72. changed and all vectors are left alone.  I put in this option because
  73. some programs (TurboPrint, ATool) use these vectors to stay resident.
  74. Note that there is no way telling wheter there is a virus in memory or
  75. some useful resident code.  When you don't press the right mousebutton,
  76. Thor Anti-Virus resets ExecBase and TRASHES any code found in the
  77. Resident vectors.  I found this the only effective way of killing a
  78. Resident structure in this little code.  I know its not pretty but its
  79. damn effective !!!  The Amiga then resets as if nothing happened.
  80. Normally you should only get the title screen then.  Thor Anti-Virus
  81. v1.0 works completely legally, that is reserving memory for its screen
  82. and structure, so it should be compatible with KickStart 1.3 and 1.4(?).
  83. I have not had a chance to try this out.  If you have any problems
  84. please let me know.
  85.  
  86.  
  87.  
  88. Short introduction
  89. ------------------
  90.  
  91. BootX v3.30 is an attempt to make the ultimate viruskiller.  BootX v3.30
  92. is fast (written completely in assembler), small and tries to be as user
  93. friendly as possible (use of the arp.library).
  94.  
  95. This program is public domain.  This program can be copied by anyone
  96. except for commercial use as long as this documentation file and the
  97. program icon accompanies the program.  Note that this program requires
  98. the Arp library to run.  No source code accompanies this program for the
  99. obvious reason that everybody would be able to change the checking
  100. algorithm.
  101.  
  102. The information contained in BootX v3.30 and this doc file is far from
  103. complete.  The author is not responsible for any mistakes about what
  104. follows.
  105.  
  106.                                      Thor
  107.  
  108. How to start BootX v3.30
  109. ------------------------
  110.  
  111. BootX v3.30 (from here on referred to as BootX) was written be used both
  112. beginners and experienced users.  BootX can be started both from CLI and
  113. the Workbench.
  114.  
  115. Starting BootX from the CLI
  116.  
  117. To start BootX from the CLI simply type:
  118.  
  119.         1> BootX3.30
  120.  
  121. followed by a return.  This loads the BootX program and starts it.
  122. BootX then detaches itself from the CLI.  This means that you can start
  123. BootX, bring the Workbench screen back to the front and then close the
  124. CLI window with the EndCLI command.
  125.  
  126. Starting BootX from the WorkBench
  127.  
  128. This is the easy part.  Simply click on the accompaning icon and BootX
  129. starts.
  130.  
  131.  
  132.  
  133. How to use BootX v3.30
  134. ----------------------
  135.  
  136. A lot of viruscheckers and viruskillers are already written for the
  137. Amiga but none of them offered all the features I needed.  Hence the
  138. various disk offering several different programs for doing the job.
  139. Enters BootX.
  140.  
  141. BootX can check the bootblock of a disk, check memory for any resident
  142. viruses and scan a disk for linkviruses.  It can load bootblock libraries
  143. for you to write on your disks as an alternative for the boring DOS Install
  144. bootblock.  It can load "brain files" so you can add any new bootblocks
  145. that BootX does not recognise yet.
  146.  
  147. Let's start a guided tour of the screen.  The main screen offers several
  148. gadgets (I hate menus when I want to work fast).  Just click the
  149. appropriate gadget to perform an action.
  150.  
  151. Quit
  152.  
  153.         Does just what the gadget says:  it releases all used memory and
  154. quits the program.
  155.  
  156.  
  157. Read to buffer
  158.  
  159.         This gadget explicitly instructs BootX to read the bootblock from
  160. the current selected drive into the buffer.  Normally BootX detects when a
  161. new disk is inserted and automatically reads its bootblock.  But some old 5
  162. 1/4 drives don't support automatic diskchange.  This gadget can also be
  163. used to read the bootblock after another programs has modified the
  164. bootblock.
  165.  
  166.  
  167. Write to buffer
  168.  
  169.         Here you instruct BootX to write the bootblock currently in the
  170. buffer to the selected drive.  BootX maintains a buffer that holds the last
  171. read bootblock.  This buffer is also visible in the large display window in
  172. semi-ASCII form (more about this later).  The buffer allows you to read a
  173. bootblock from one disk and then copy it to another.
  174.  
  175.  
  176. The 4 drivegadgets
  177.  
  178. You can connect 4 disk drives to the Amiga.  BootX checks how many drives
  179. are connected to the Amiga and installs a gadget for every one of them.
  180. When a drive is not found the gadget will read "N/A":  not available.  Note
  181. that although a drive is connected the Amiga will not recognize its
  182. presence when it is turned off (only applicable for external drives).
  183.  
  184.  
  185. Install BootBlock
  186.  
  187. Here you can write the selected built-in bootblock to the bootblock of the
  188. current drive.
  189. When no bootblock library is loaded only the normal Install v1.3 bootblock
  190. is available.  At startup BootX looks for a file called "BootX.BBLib" in
  191. the directory from which BootX started.  It contains several alternative
  192. bootblocks. It is possible to load another bootblock library using the
  193. "Load bootblock library" menuitem (see further).
  194.  
  195.  
  196. Next and Previous
  197.  
  198. These gadgets show the next or the previous bootblocks in the currently
  199. loaded bootblock library.  If no library is loaded, only the normal Install
  200. 1.3 bootblock will be available.  Among the bootblocks are the normal DOS
  201. bootblock, Ralph Babel's Install2 and several others.  Thanks to all groups
  202. and programmers whose bootblock I included.  Note however that when you
  203. press Next and Previous the bootblock buffer is not updated.
  204.  
  205.  
  206. BootBlock window
  207.  
  208. This window shows the name of the selected built-in bootblock.
  209.  
  210.  
  211. Message window
  212.  
  213. This window reports messages and errors resulting from the various
  214. operations.
  215.  
  216.  
  217. Main display window
  218.  
  219. Shows the bootblock currently in the buffer in semi-ASCII representation.
  220. Only the readable characters are shown.  This allows you to check for
  221. readable text signifying the nature of the bootblock when BootX reports
  222. "Unknown bootblock".
  223.  
  224.  
  225. About
  226.  
  227. Display information about BootX and the version number.  Always try to get
  228. the latest version available to have optimum virus protection.
  229.  
  230.  
  231. Load from/Save to file
  232.  
  233. BootX can save the bootblock in the buffer to any valid Amiga device.
  234. 'Save to file' can be used to save the bootblocks of games, mega demos and
  235. other programs to a separate data disk.  In case of a virus attack or a bad
  236. disk you can load the previously saved bootblock back in the buffer and
  237. write it back to the original disk.  Note:  no checking is done on the
  238. loaded bootblock.  So it is possible to load f.i.  the parallel.device and
  239. write it to the boot block.  This allows you to write self-made bootblock
  240. to the disk.  BootX now asks you if it should correct the bootblock
  241. checksum when it is wrong.
  242.  
  243.  
  244. Memory check
  245.  
  246. Checks the memory for any known virus ignoring all known resident virus
  247. checkers.  When BootX finds a virus it will display an Alert identifying
  248. which virus was in memory and will try to kill it.  BootX also removes any
  249. known linkvirus from memory.
  250.  
  251. BootX also shows some important vectors from Execbase in the main
  252. display window.  These vectors are mostly altered by viruses.  A normal
  253. vector will be display in white.  When BootX thinks that something is
  254. not normal it will display the vector in white on red.  Note that this
  255. not necessarily means that there is a virus in memory.  Resident
  256. programs as f.i.  TurboPrint use these vectors too.  I will try to keep
  257. BootX's knowledge base as up to date as possible.  In case of doubt,
  258. save all data and cold-start the Amiga.
  259.  
  260.  
  261. Goto sleep
  262.  
  263. Closes the main BootX screen and releases as much memory as possible.  A
  264. small window on the workbench screen is opened showing that you that BootX
  265. is still in memory.  In this state BootX uses no CPU time and just waits
  266. for you to make the window active and click in it with the menu button (the
  267. right mouse button).  Then the main BootX screen and window is opened again
  268. and you can go on again.  BootX does not unload a brain file or a bootblock
  269. library.  Also, when asleep BootX doesn't do any checking ( like VirusX
  270. does).  I did this on purpose.  There is no need to continuously keep
  271. checking every disk that is inserted.  Just check them once to make sure
  272. there virus-free.
  273.  
  274.  
  275. Kill LinkVirus
  276.  
  277. This gadget pops up the file requester for you to specify a device to
  278. search for linkviruses.  In the current version this can only be a
  279. device.  Later version will support directory and file checking.  When
  280. you select OK BootX starts searching for linkviruses in any executable
  281. file it encounters.  Note that the complete disk is searched.  In case
  282. BootX finds a link virus you are given the option to remove it from the
  283. infected file.  BootX removes the linkvirus and save the file under the
  284. same name with an extension ".bx".  Currently only the IRQ and the TTV1
  285. linkviruses are checked for.
  286.  
  287.  
  288. Help
  289.  
  290. This gadget toggles the help feature.  When it is turned on you can
  291. click any gadget to get a short help message about its function.  Click
  292. Help again to turn off the help feature.
  293.  
  294.  
  295. Detection on/off
  296.  
  297. This gadget works as an on/off switch.  It turns off diskchange
  298. detection.  Sometimes it is not useful to have BootX read the bootblock
  299. of every disk you insert, especially when you have a bootblock in the
  300. buffer you wish to write to another disk.  This gadget allows one drive
  301. user to copy bootblocks.
  302.  
  303. Learn
  304.  
  305. Clicking this gadget prompts you for a name when BootX does not known the
  306. bootblock in the buffer yet.  Enter an empty string when you want to cancel
  307. the operation.  BootX then adds the bootblock to the current brain file (if
  308. present).  Else it make a brain file in memory.
  309.  
  310.  
  311. I realize this documentation is brief but I made BootX to be as intuitively
  312. as possible.  BootX is updated frequently to recognize new bootblocks and
  313. viruses.
  314.  
  315. © 1990 Thor
  316.                          _
  317.                       _ //
  318.             Thanks to \X/ Amiga for being the best computer ever !
  319.             Thanks to BSB for beta testing and giving useful comments.
  320.